package net.messagenet.mazor.DO;

/**
 * This data object class represents a customer in the system
 * 
 * 
 * @author Idan
 *
 */

public class CustomerDO {
	private int id;
	private String name;
	private String location;
	private int accountancyId;
	private String state;
	private String country;
	private int zipCode;
	
	
	/**
	 * returns the location of the customer
	 * 
	 * @return location 
	 */
	public String getLocation() {
		return location;
	}
	/**
	 * sets a location for the customer
	 * 
	 * @param location
	 */
	public void setLocation(String location) {
		this.location = location;
	}
	/**
	 * 
	 * returns the id of the customer in the system
	 * 
	 * @return id
	 */
	public int getId() {
		return id;
	}
	/**
	 * sets a new id for the customer
	 * 
	 * @param id
	 */
	public void setId(int id) {
		this.id = id;
	}
	/**
	 * returns the name of the customer
	 * 
	 * @return customer name
	 */
	public String getName() {
		return name;
	}
	/**
	 * sets a new name for the customer
	 * 
	 * @param name
	 */
	public void setName(String name) {
		this.name = name;
	}
	/**
	 * returns the Accountancy id of the customer
	 * 
	 * @return Accountancy id
	 */
	public int getAccountancyId() {
		return accountancyId;
	}
	/**
	 * sets a Accountancy id of the customer
	 * 
	 * @param accountancyId
	 */
	public void setAccountancyId(int accountancyId) {
		this.accountancyId = accountancyId;
	}
	/**
	 * returns the State of the customer
	 * 
	 * @return state
	 */
	public String getState() {
		return state;
	}
	/**
	 * sets the state of the customer
	 * 
	 * @param state
	 */
	public void setState(String state) {
		this.state = state;
	}
	/**
	 * returns the Country of the customer
	 * 
	 * @return country
	 */
	public String getCountry() {
		return country;
	}
	/**
	 * sets the country of the customer
	 * 
	 * @param country
	 */
	public void setCountry(String country) {
		this.country = country;
	}
	/**
	 * returns the zip code of the customer
	 * 
	 * @return zip code
	 */ 
	public int getZipCode() {
		return zipCode;
	}
	/**
	 * sets the zipcode of the customer
	 * 
	 * @param zip code
	 */
	public void setZipCode(int zipCode) {
		this.zipCode = zipCode;
	}
	/**
	 * this method returns a copy of the customer object
	 * 
	 * @return a new copy of the customer
	 */
	public CustomerDO cloneCustomer(){
		CustomerDO customerDO = new CustomerDO();
		customerDO.setAccountancyId(accountancyId);
		customerDO.setCountry(country);
		customerDO.setId(id);
		customerDO.setLocation(location);
		customerDO.setName(name);
		customerDO.setState(state);
		customerDO.setZipCode(zipCode);
		return customerDO;
	}
	
}
